Don't special case root package for overrides
Hi! What is the expected behavior of path overrides and workspaces? There are some [tests] for this, but looks like they don't actually test the behavior: this commit removes special casing of the root package, but `override_self` still passes. I see two options:
1. Allow overriding of the workspace members as usual. This amounts to removing that `filter`
2. Ignore overriding of the workspace members.
In any case, I think it would be nice to add a test which overrides local package to some other package to make sure that test does not pass simply because the package and its override are in fact the same.
[tests]: https://github.com/rust-lang/cargo/blob/master/tests/path.rs#L599-L679